package br.unisul.prolinear.dao;

import java.util.List;

import org.hibernate.Criteria;
import org.hibernate.criterion.Restrictions;

import br.unisul.prolinear.model.Aluno;
import br.unisul.prolinear.model.Compartilhamento;
import br.unisul.prolinear.model.Documento;
import br.unisul.prolinear.utils.HibernateUtil;

public class CompartilhamentoDaoImp extends GenericDaoImp<Compartilhamento> implements CompartilhamentoDao {

	@SuppressWarnings("unchecked")
	@Override
	public Compartilhamento get(Documento doc, Aluno aluno) {
		Criteria crit = HibernateUtil.getSession().createCriteria(Compartilhamento.class);
		crit.createAlias("doc", "documento");
		crit.createAlias("aluno", "aluno");
		crit.add(Restrictions.eq("aluno.id",aluno.getId()));
		crit.add(Restrictions.eq("documento.id", doc.getId()));		
		List<Compartilhamento> list = crit.list();
		if(list.isEmpty()){
			return null;
		} else{
			return list.get(0);
		}
	}

}
